1. Field of the Invention
This invention relates to an information retrieval apparatus for retrieving information linked from an anchor specified in a virtual three dimensional space.
2. Description of the Related Art
Conventional information retrieval apparatuses are available, such as WebSpace, a VRML (Virtual Reality Modeling Language) browser that was described on pages 96 to 113 in the November 1995 issue of Nikkei Computer Graphics. This apparatus constructs a virtual three dimensional space in a computer, places a virtual object therein, and displays the virtual three dimensional space on a display screen. When an operator moves a cursor on the display screen using a pointing device such as a mouse and specifies a virtual object on the screen, the apparatus retrieves linked information, such as a homepage on the Internet, that has been linked to the virtual object.
FIG. 15 is a basic functional block diagram of a conventional information retrieval apparatus for performing retrieval in a virtual space. In the figure, a viewpoint position modifier unit 2, which is a pointing device, such as a joystick, outputs a coordinate data signal. This coordinate data signal is, for example, an electric signal representing the amount of displacement.
A viewpoint position set unit 4 includes a function for transforming the coordinate data signal from viewpoint position modifier unit 2 into a form that can be used by an image generator unit 6. In other words, viewpoint position set unit 4 performs, with respect to the coordinate data signal that was output from viewpoint position modifier unit 2, a transformation to three dimensional coordinate data in an orthogonal coordinate system to determine a viewpoint position and line of sight direction. The viewpoint position and line of sight direction together is called hereinafter a "viewpoint vector". A viewpoint vector is output to image generator unit 6. Image generator unit 6 generates an image when a virtual three dimensional space defined by three dimensional data 8 is viewed from a viewpoint position defined by a viewpoint vector obtained from viewpoint position set unit 4 in a line of sight direction defined by the same viewpoint vector.
A cursor position modifier unit 10 is, for example, a pointing device, such as a mouse. An anchor specifier unit 12 is, for example, a mouse button. An anchor information set unit 14 generates a two dimensional coordinate representing a cursor position on the screen based on a coordinate data signal of a cursor that is input through cursor position modifier unit 10, and displays the cursor at that position on the screen. On the other hand, anchor information set unit 14 obtains a coordinate on the screen of a virtual object to be an anchor from image generator unit 6. Thus, when the cursor is moved onto the virtual object which is to be the anchor through cursor position modifier unit 10, and the virtual object is specified through an operation of anchor specifier unit 12, such as a click of a mouse button, anchor information set unit 14 can judge that the virtual object has been selected. If the virtual object that was selected through anchor specifier unit 12 has been defined as an anchor, anchor information set unit 14 outputs data specifying the virtual object, such as an object ID, to a linked information retrieval unit 16. Linked information retrieval unit 16 retrieves and displays linked information 20, such as a home page on the Internet, based on linked data 18 that was mapped to the virtual object, which is an anchor. An image display unit 22 displays images, for example, for display by the aforementioned image generator unit 6 and the aforementioned linked information retrieval unit 16.
The aforementioned viewpoint position set unit 4, anchor information set unit 14, image generator unit 6, and linked information retrieval unit 16 may, in concrete terms be, for example, central processing units (CPU) in computers executing their respective prescribed programs. Furthermore, three dimensional data 8 is usually stored in a storage device in a computer and used by being read as necessary.
FIG. 16a is a schematic diagram showing a virtual three dimensional space and a viewpoint vector. FIG. 16b is a schematic diagram showing an image that image generator unit 6 generates corresponding to the viewpoint vector shown in FIG. 16a. FIG. 16a shows an example where object A (an object 30) and object B (an object 32) having identical sizes are arranged in a three dimensional space. The coordinate system corresponds to a cathode ray tube surface (CRT surface) of the display device, and is hereinafter referred to as a CRT coordinate system. For example, the x-axis corresponds to a vertical direction of the screen, the y-axis a horizontal direction, and the z-axis a direction of depth. Since the line of sight and the screen oppose each other, the direction of a line of sight vector having a viewpoint position 34 as the origin in this coordinate system becomes parallel with the z-axis. FIG. 16b is a two dimensional image of objects A and B when viewed from viewpoint 34 in the z-axis direction. The term "two dimensional image" is used herein to mean a "two dimensional type" of image, namely, an image represented in a plane without perspective. Therefore, in FIG. 16b, objects A and B are represented as images 38, 40 having identical sizes on a screen 36, even though these objects have different distances from viewpoint 34.
FIG. 17a and FIG. 17b are schematic diagrams illustrating examples of operations of cursor position modifier unit 10 and anchor specifier unit 12, respectively. When an operator moves a mouse 50, which is cursor position modifier unit 10, such as back and forth or left and right on a table surface, a cursor 52 accordingly moves up and down or left and right on screen 36 (FIG. 17a). After the operator manipulates mouse 50 to move cursor 52 over image 38 of object A and clicks, for example, a left mouse button 54, which is anchor specifier unit 12, anchor information set unit 14 compares the coordinate on screen of virtual object A obtained from image generator unit 6 and the coordinate specified by the cursor, then judges that the relevant object was specified (FIG. 17b).
Linked information retrieval unit 16 retrieves information linked to a homepage on the Internet, for example, with an object in a three dimensional space specified through anchor information set unit 14 as an anchor and based on a link that was mapped to the anchor beforehand. FIG. 18 is a schematic diagram showing an operation for retrieving linked information that was linked to an object in a three dimensional space specified through anchor information set unit 14. For example, anchor information set unit 14 fetches an object ID attached to image 38 of an object specified through anchor specifier unit 12, and passes it to linked information retrieval unit 16. Then, linked information retrieval unit 16 retrieves linked information 20 corresponding to the object ID from linked data 18. Linked information retrieval unit 16 is, in general, an HTML (Hyper Text Markup Language) browser capable of processing and displaying HTML files described in HTML.
Linked data 18 represents information mapping an object ID and a URL address which indicates a storage location on the Internet, and is described within an HTML file. Linked information 20 is an HTML file, such as an HTML file for a home page on a server connected to the Internet.
Operations to modify a viewpoint position in the aforementioned virtual three dimensional space are implemented by a VRML file and a VRML browser, which processes and displays VRML files. The VRML browser is a helper application or plug-in software for the HTML browser and is used while installed into the HTML browser. The HTML browser decodes HTML files, and if they contain VRML files, entrusts the processing of the VRML files to the VRML browser.
In other words, linked information retrieval unit 16 fetches a URL address 55 corresponding to the object ID from linked data 18 and accesses an HTML file 57 on a server connected to a network 56. HTML file 57 is passed to the HTML browser in linked information retrieval unit 16. A VRML file in the HTML file is passed to the VRML browser through the HTML interface, transformed to image data 58, and displayed on image display unit 22.
In the aforementioned conventional information retrieval apparatus, other functions in addition to the operations for the aforementioned three dimensional space can be implemented by installing into the HTML browser applications providing the respective functions.
However, in the aforementioned conventional information retrieval apparatus, it is necessary to interface the application to be installed with the HTML browser. Furthermore, the data to be handled by the various functions is included within the HTML file, namely, it must appear to be an HTML file. Due to this constraint, considerable effort is required to integrate the various types of existing applications in an information retrieval apparatus using conventional hypermedia technology and a problem is that this cannot be easily implemented, while another problem is that the retrievable information range also becomes limited.
In the conventional information retrieval apparatus, only a virtual object in a virtual space could be specified as an anchor, while else could not be specified as an anchor.
In the conventional information retrieval apparatus, a user could specify display states, one at a time or all at once, whether or not to identifiably indicate that virtual objects are anchors. However, the user could not switch a display state according to some condition or state.
Furthermore, in the aforementioned conventional retrieval apparatus, since a cursor indicating a virtual object in a virtual space moves only on a specific plane, a problem is that the cursor may become hidden behind the virtual object when the virtual three dimensional space is displayed in three dimensions.
One method to solve this problem in the conventional apparatus is by performing an operation to move the viewpoint behind the virtual object in the foreground. However, a problem with this method is that the operation is troublesome.
Furthermore, another method to solve the aforementioned problem is by covering the screen displaying the virtual three dimensional space in three dimensions with the plane for moving the cursor, namely, by moving the cursor on a plane always positioned in front of the virtual three dimensional space. However, a problem with this method is that the display loses its three dimensional perspective.